1. Technical Field
The present invention generally relates to data processing systems and in particular to storage consistency in virtualized data processing systems.
2. Description of the Related Art
A virtual machine (VM) is a logical implementation of a physical machine, such as a data processing system, or a computer system. As such, a VM is capable of executing computer programs and computer readable code in the same way a physical computer system would execute the code, and the VM may use resources provided by the physical machine as the resources are made available to the VM. Said another way, the VM provides abstractions of physical resources that are made available to computer programs executing on the VM. A physical machine, such as a computer system, may include a single VM, or may include several VMs. The software layer providing the VM is called a hypervisor.
One method for implementing VMs includes using a mirrored VM environment. A mirrored VM environment includes two identical VMs. Each of the two identical VMs includes identical abstractions of available physical resources. Mirrored VMs may reside on a single host, or on separate hosts. The mirrored VM environment allows computer code that has encountered a hardware error on one virtual machine, to execute on a second virtual machine.